home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 7 / FM Towns Free Software Collection 7.iso / data / nyan_e2 / nyane2_h.ext < prev    next >
Text File  |  1993-11-30  |  4KB  |  195 lines

  1. /********  発言タイトル一覧の作成  ~外部コマンド使用版~  v1.04a用 **********/
  2. var item[92];
  3. %MesDat   tmpdir|{\_TMP.DAT};
  4. %TreeDat  tmpdir|{\_TREE.DAT};
  5. %DataDat  tmpdir|{\_DATA.DAT};
  6.  
  7. %setstar{[Flag]
  8.     case(Flag={Yes} && (type={Forum} || type={Patio}) && UnReadL!=0,{Yes},{
  9.         %last @nolmemo(2)-2;
  10.         case(last>UnReadL,
  11.         {Yes}, {linenum:=last-UnReadL+1;
  12.         },{No},{linenum:=2;
  13.         });
  14.         mclear(3);
  15.         mmove(2,1,linenum-1,3);
  16.         madd(3,@getchar(@memo(2,linenum,1),1,8));
  17.         madd(3,{*});
  18.         madd(3,@getchar(@memo(2,linenum,1),10));
  19.         mmove(2,linenum+1,@nolmemo(2),3);
  20.         mclear(2);
  21.         mcopy(3,2);
  22.         mclear(3);
  23.     /**/    mwrite(MesDat,2);/**/
  24.     });
  25. };
  26.  
  27. %date{[DATE]
  28.     %Y    @getchar(DATE, 1,2);
  29.     %M    @getchar(DATE, 4,2);
  30.     %D    @getchar(DATE, 7,2);
  31.     %HH    @getchar(DATE,10,2);
  32.     %MM    @getchar(DATE,13,2);
  33.     case(@im(M|D)+0==0,
  34.     {Yes}, {im({0000000000});
  35.     },{No},{im(Y|M|D|HH|MM);
  36.     });
  37. };
  38.  
  39. %setline {
  40.     case(type,
  41.     {BUL},{
  42.         var OLDdate[10];
  43.         var CURdate[10];
  44.         loop({
  45.             %wkln1    @fread(19,{/});
  46.             case(@getchar(wkln1,10,5)*@getchar(wkln1,20,2)>0,
  47.             {Yes},{
  48.                 CURdate:=@date({00/}|@getchar(wkln1,17,5)|{ 00:00});
  49.                     case(OLDdate <= CURdate,
  50.                     {Yes},{
  51.                 item:=@ftell|{ }|@getchar(wkln1,7,80);
  52.                 madd(2,item);
  53.                 OLDdate:=CURdate;
  54.                 });
  55.             });
  56.             im(wkln1<>{})
  57.         });
  58.     },{HP},{
  59.         dispoff({Yes});
  60.         mclear(2);
  61.         %nowdir    @getcdir2;
  62.         setcdir2(current);
  63.         case(First=1 && Count=0,
  64.         {Yes},{
  65.             command({HLIST -th -i}|fname|{ -o}|MesDat);
  66.         },{No},{
  67.             case(Count=0,
  68.             {Yes},{
  69.                 command({HLIST -i}|fname|{ -o}|MesDat
  70.                     |{ -th -s}|First);
  71.             },{No},{
  72.                 command({HLIST -i}|fname|{ -o}|MesDat
  73.                     |{ -th -s}|First|{ -c}|Count);
  74.             });
  75.         });
  76.         mread(MesDat,2);
  77.         delfile(MesDat);
  78.         setcdir2(nowdir);
  79.         dispoff({No});
  80.     },{Mail},{
  81.         loop({
  82.             %wkln1 @fread(35,{/});
  83.             item:=@ftell;
  84.             %wkln2 @fread;
  85.             case(@getchar(wkln1,41,1)={:} && 
  86.                     @getchar(wkln2,5,4)={題名},{Yes},{
  87.                 item:=item|{ }|@getchar(wkln1,5,17)
  88.                     |@getchar(wkln1,23,8)
  89.                     |@getchar(wkln1,32,6)|{ }
  90.                     |@getchar(wkln2,11,68);
  91.                 madd(2,item);
  92.             });
  93.             im(wkln1<>{})
  94.         });
  95.     },{Prof},{
  96.         loop({
  97.             %wkln1    @fread(78,{-});
  98.             %wkln2    @fread;
  99.             item:=@ftell;
  100.             case(@getchar(wkln1,20,15)={---------------} &&
  101.                  @getchar(wkln2,19,4)={PROF},{Yes},{
  102.                 madd(2,item|{ }|@getchar(wkln2,1,18)|{(}|
  103.                     @getchar(wkln2,24,8)|{)\n});
  104.             });
  105.             im(wkln1<>{})
  106.         });
  107.     });
  108. };
  109.  
  110. %MesChk{
  111.     var Line1[500];
  112.     var Line2[500];
  113.     mclear(4);
  114.     MesType:={};
  115.     fopen(fname);
  116.     Line2:=@fread;
  117.     %MesChk2{[n]
  118.         var rc[3];
  119.         case(@getchar(Line1,1,n) * @getchar(Line1,n+2,n) > 0,{Yes},{
  120.             case(    @getchar(Line2, 1,1)={(} &&
  121.                 @getchar(Line2, 4,1)={)} &&
  122.                 @getchar(Line2,10,1)={/} &&
  123.                 @getchar(Line2,13,1)={/} &&
  124.                 @getchar(Line2,16,1)={ } &&
  125.                 @getchar(Line2,19,1)={:},
  126.             {Yes},{ 
  127.                 rc:={Yes};
  128.             });
  129.         });
  130.         im(rc);
  131.     };
  132.     loop({
  133.         Line1:=Line2;
  134.         Line2:=@fread;
  135.         case(@getchar(Line1,4,1)={/},
  136.         {Yes},{
  137.             case(@MesChk2(3),{Yes},{MesType:={OLD}});
  138.         },{No},{
  139.             case(@getchar(Line1,6,1)={/},{Yes},{
  140.                 case(@MesChk2(5),{Yes},{MesType:={NEW}});
  141.             });
  142.         });
  143.         im(MesType={} && Line1<>{});
  144.     });
  145.     fclose;
  146. };
  147.  
  148. mclear(3);
  149. linenum:=0;
  150. footnote({ ログの取り出しをしています.ちょっと,お待ちを!});
  151. case(type<>{Forum} && type<>{Patio},
  152. {Yes},{
  153.     madd(2,{99999999 ★表示したいメッセージを左ダブルクリック}|
  154.         {(又はカーソル移動+PF3)してね★\n});
  155.     fopen(fname);
  156.     setline;
  157.     case(type<>{HP},{Yes},{
  158.         madd(2,@ftell | { -----------------}|
  159.                   {------------------\n});
  160.     });
  161.     fclose;
  162. },{No},{
  163.     dispoff({Yes});
  164.     MesChk;
  165.     mclear(2);
  166.     %nowdir    @getcdir2;
  167.     setcdir2(current);
  168.     case(First=1 && Count=0,
  169.     {Yes},{
  170.         command({HLIST -i}|fname|{ -o}|MesDat|{ -tm});
  171.     },{No},{
  172.         case(Count=0,
  173.         {Yes},{
  174.             command({HLIST -i}|fname|{ -o}|MesDat
  175.                 |{ -tm -s}|First);
  176.         },{No},{
  177.             command({HLIST -i}|fname|{ -o}|MesDat
  178.                 |{ -tm -s}|First|{ -c}|Count);
  179.         });
  180.     });
  181.     mread(MesDat,2);
  182.     setcdir2(nowdir);
  183.     dispoff({No});
  184. });
  185. case( (type={Forum} || type={Patio}) && First=1 && Count=0,{Yes},{
  186.     setstar({Yes});
  187. });
  188. %member @body(fname,,{\})|{\MEMBER.TXT};
  189. case( (type={Forum} || type={Mail}) && @filechk(member),
  190.     {Yes}, {mread(member,3); memnum:=@nolmemo(3);
  191.     },{No},{mkdir(logd,@body(fname,{:},{\}));
  192.         madd(3,{});
  193. });
  194. mset(3,{r});
  195.